package cn.tedu.ximart.server.mapper;


import cn.tedu.ximart.server.pojo.entity.Sku;
import cn.tedu.ximart.server.pojo.vo.SkuDetailVO;
import cn.tedu.ximart.server.pojo.vo.SkuListItemVO;
import org.springframework.stereotype.Repository;

import java.util.List;

@Repository
public interface SkuMapper {
    /**
     *
     * 插入sku数据
     * @param sku sku数据
     * @return 受影响的行数，成功插入数据时返回1。
     */
    int insert(Sku sku);

    /**
     * 根据id删除sku数据
     * @param id 期望删除的sku数据的id
     * @return 受影响的行数，成功删除数据时返回1，如果无此条数据则返回0.
     */
    int deleteById(Long id);


    /**
     * 根据id批量删除sku数据
     * @param id 期望批量删除的sku数据的id
     * @return 返回值为成功删除的数据量。
     */
    int deleteByIds(Long... id);

    /**
     * 查询sku数量
     * @return 返回值为查询到的相册数量
     */
    int count();

    /**
     * 根据id查询sku详情
     * @param id 期望查询的id
     * @return 返回值为查询到的数据，如果无此id对应的数据则返回null.
     */
    SkuDetailVO getById(Long id);

    /**
     * 查询sku的列表项
     * @return
     */
    List<SkuListItemVO> list();
}
